package cn.jobstart.controller;
import io.swagger.annotations.Api;
import org.springframework.web.bind.annotation.RequestMapping;
import javax.annotation.Resource;
import org.springframework.web.bind.annotation.RestController;
import cn.jobstart.pubInter.exception.SkException;
import cn.jobstart.pubInter.IBaseService;
import cn.jobstart.pubInter.RestfulController;
import cn.jobstart.dto.AdminJobPortraitDTO;
import cn.jobstart.dto.AdminJobPortraitPageDTO;
import cn.jobstart.modelExt.AdminJobPortraitExt;
import cn.jobstart.searchExt.AdminJobPortraitSearchExt;
import cn.jobstart.service.IAdminJobPortraitService;
import cn.jobstart.vo.AdminJobPortraitDetailVO;
import cn.jobstart.vo.AdminJobPortraitListVO;
import cn.jobstart.vo.AdminJobPortraitDomainVO;
import cn.jobstart.vo.AdminJobPortraitDetailDomainVO;
import cn.jobstart.export.AdminJobPortraitDomainExport;
import cn.jobstart.controller.ApiManageController;
import org.springframework.validation.annotation.Validated;
import java.util.Set;
import java.util.HashSet;
import cn.jobstart.pubInter.exception.BusinessException;

/**
*    @author sunke
*    @Date 2023-09-06 15:00:20
*    @description AdminJobPortraitController      职位画像
*/
@Api(tags = "人才管理系统-职位画像相关", description = "职位画像相关接口")
@RestController(value ="adminJobPortraitRestfulController")
@RequestMapping("/adminJobPortrait/")
@Validated
public class AdminJobPortraitController extends ApiManageController<AdminJobPortraitDTO,AdminJobPortraitPageDTO,AdminJobPortraitExt, AdminJobPortraitSearchExt,AdminJobPortraitDomainVO,AdminJobPortraitDetailDomainVO,AdminJobPortraitDetailVO,AdminJobPortraitListVO,String> {

	@Resource(name = "adminJobPortraitService")
	private IAdminJobPortraitService adminJobPortraitService;



	@Override
	public IBaseService<AdminJobPortraitExt, AdminJobPortraitSearchExt,String> getBaseService() throws SkException {
		return adminJobPortraitService;
	}

	@Override
	public String getBaseRoute() {
		return "/adminJobPortrait/";
	}

	/**
	* 当前模板名称
	* @return
	*/
	@Override
	public String getModelName(){
		return "职位画像";
	}

	@Override
	public Class exportExcelClass() {
		return AdminJobPortraitDomainExport.class;
	}

	@Override
	public Set<String> totalMapSet() {
		Set totalMapSet=new HashSet();
		totalMapSet.add("count(admin_job_portrait.ajp_id) as countNum");
		return totalMapSet;
	}


}